The movement of people and/or objects through various spaces and passageways may be monitored and/or controlled for any number of purposes including safety and security. Such monitoring and/or control may be performed most efficiently when it is done automatically by machine with little or no human interventions.
Various sensors are known for use in automatic object detection systems. For example, photovoltaic sensors may detect objects interrupting a beam of visible or invisible (e.g., ultraviolet) light; mechanical switches and load cells may detect objects through direct or indirect contact or by detecting the weight of an object; thermal sensors may detect objects radiating heat; and electromagnetic sensors may detect objects that alter electromagnetic fields (e.g., metallic objects). These sensors may send signals to logic circuits that control mechanical actuators, record the presence of the object and/or alert an operator based on the presence or absence of an object.
Such sensors may not be well suited for certain security systems because they are easily circumvented; they only detect a certain class of objects moving through a narrowly constrained space; and they cannot directly determine the direction and/or velocity of an object. These sensors may have problems maintaining uniform sensitivity throughout a monitored space and/or over time and may be prohibitively expensive.
Various camera-based systems may be used within object detection systems and control systems (e.g., in security and/or safety applications). Camera-based systems may have the additional advantage of providing an image of the monitored space that may be stored for later analysis. Such camera-based systems typically use an electronic camera (e.g., still or video) that captures images on an array of charge coupled devices (i.e., CCDs) and converts the captured images into electronic data files for automatic analysis and/or storage.
Motion detection systems have been developed using electronic video cameras and frame capturing processes that detect and/or track certain features in each frame of a captured video sequence. For example, automatic door control systems may track the corners of an object from frame to frame and may calculate a velocity vector for the object. This velocity vector may be used to determine whether to open or close an automatic door.
Such systems (e.g., the corner tracking system described above) may extract data from a monocular image sequence. Such monocular systems may provide only 2 dimensional (i.e., 2d) images from which to compute velocity vectors. Such monocular systems may have difficulty distinguishing e.g., shadows and lighting effects from actual 3-dimensional (i.e., 3d) objects. This problem may be exacerbated in certain security systems wherein e.g., a pre-alarm condition triggers a warning strobe light that affects detected images of the monitored space.
Monocular video monitoring systems operating on 2d image data may need to tolerate blind spots and/or blind intervals during which regular obstructions appear in the field of view of the camera. For example, some doors or doorframes being controlled by monocular video systems may come into the field of view of the monitoring cameras whenever they are opened. Some systems may be programmed to ignore frames and/or frame segments whenever the door is opened. Other more-refined systems may use additional sensors to detect the actual position of a door over time and ignore only the portions of a frame where the door and/or door frame is expected to appear.
Additionally, when monocular video monitoring systems are initially installed, the systems may require “training” using e.g., a reference image in order to establish a frame of reference appropriate to the particular environment. Such training may involve tedious and expensive procedures.